package com.heima.wemedia.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.admin.dtos.BhDto;
import com.heima.model.admin.dtos.ConnentDto;
import com.heima.model.admin.dtos.NewsDto;
import com.heima.model.admin.dtos.NewsTgDto;
import com.heima.model.article.dtos.UpOrDownDto;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.wemedia.dtos.WmNewsDto;
import com.heima.model.wemedia.dtos.WmNewsPageReqDto;
import com.heima.model.wemedia.pojos.WmNews;

public interface WmNewsService extends IService<WmNews> {

    /**
     * 条件查询文章列表
     * @param dto
     * @return
     */
    public ResponseResult findList(WmNewsPageReqDto dto);

    /**
     * 发布修改文章或保存为草稿
     * @param dto
     * @return
     */
    public ResponseResult submitNews(WmNewsDto dto);

    /**
     * 文章的上下架
     * @param dto
     * @return
     */
    public ResponseResult downOrUp(WmNewsDto dto);


    /**
     * 编辑文章时，文章回显
     * @param id
     * @return
     */
    ResponseResult getNews(Integer id);

    /**
     * 删除文章
     * @param id
     * @return
     */
    ResponseResult deleteNews(Integer id);

    /**
     * 管理端获取文章列表
     * @param dto
     * @return
     */
    ResponseResult getNewsList(NewsDto dto);

    /**
     * 管理端查看文章详情
     * @param id
     * @return
     */
    ResponseResult getNewsContent(Integer id);

    /**
     * 管理端驳回文章
     * @param dto
     * @return
     */
    ResponseResult boHui(BhDto dto);

    /**
     * 管理端审核文章
     * @param dto
     * @return
     */
    ResponseResult passAuth(NewsTgDto dto);

    /**
     * 管理端获取内容列表
     * @param dto
     * @return
     */
    ResponseResult getConnentList(ConnentDto dto);

    /**
     * 管理端上架文章
     * @param dto
     * @return
     */
    ResponseResult up(UpOrDownDto dto);

    /**
     * 管理端下架文章
     * @param dto
     * @return
     */
    ResponseResult down(UpOrDownDto dto);

    String getTitleById(Integer id);
}
